package com.edu.study.base.stuCourseSutdent.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 学员课程学习情况对象 stu_course_sutdent
 * 
 * @author zw
 * @date 2021-06-30
 */
@ApiModel("课程学习状态")
public class StuCourseSutdent
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @ApiModelProperty(hidden = true)
    private Long id;

    /** 会员ID */
    @Excel(name = "用户ID")
    @ApiModelProperty(value="用户ID",required = true)
    private String memberId;

    /** 用户名称 */
    @Excel(name = "用户名称")
    @ApiModelProperty(hidden = true)
    private String memberUsername;

    /** 课程ID */
    @Excel(name = "课程ID")
    @ApiModelProperty(value="课程ID",required = true)
    private String courseId;

    /** 开始学习时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "开始学习时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(hidden = true)
    private Date startLearnDate;

    /** 学习状态 0:未开始，1：学习中，2 已学完 */
    @Excel(name = "学习状态")
    @ApiModelProperty(value = "学习状态 0:未开始，1：学习中，2 已学完",required = true)
    private String courseLearnStatus;

    /** 课后习题完成状态 */
    @Excel(name = "课后习题完成状态")
    @ApiModelProperty(hidden = true)
    private String courseQuestionStatus;

    /** 完成学习时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "完成学习时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(hidden = true)
    private Date endLearnDate;

    /** 获得的成绩 */
    @Excel(name = "获得的成绩")
    @ApiModelProperty(hidden = true)
    private Long score;

    /** 可以获得的积分 */
    @Excel(name = "可以获得的积分")
    @ApiModelProperty(hidden = true)
    private Long integration;

    /** 可以活动的成长值 */
    @Excel(name = "可以活动的成长值")
    @ApiModelProperty(hidden = true)
    private Long growth;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setMemberId(String memberId) 
    {
        this.memberId = memberId;
    }

    public String getMemberId() 
    {
        return memberId;
    }
    public void setMemberUsername(String memberUsername) 
    {
        this.memberUsername = memberUsername;
    }

    public String getMemberUsername() 
    {
        return memberUsername;
    }
    public void setCourseId(String courseId) 
    {
        this.courseId = courseId;
    }

    public String getCourseId() 
    {
        return courseId;
    }
    public void setStartLearnDate(Date startLearnDate) 
    {
        this.startLearnDate = startLearnDate;
    }

    public Date getStartLearnDate() 
    {
        return startLearnDate;
    }
    public void setCourseLearnStatus(String courseLearnStatus) 
    {
        this.courseLearnStatus = courseLearnStatus;
    }

    public String getCourseLearnStatus() 
    {
        return courseLearnStatus;
    }
    public void setCourseQuestionStatus(String courseQuestionStatus) 
    {
        this.courseQuestionStatus = courseQuestionStatus;
    }

    public String getCourseQuestionStatus() 
    {
        return courseQuestionStatus;
    }
    public void setEndLearnDate(Date endLearnDate) 
    {
        this.endLearnDate = endLearnDate;
    }

    public Date getEndLearnDate() 
    {
        return endLearnDate;
    }
    public void setScore(Long score) 
    {
        this.score = score;
    }

    public Long getScore() 
    {
        return score;
    }
    public void setIntegration(Long integration) 
    {
        this.integration = integration;
    }

    public Long getIntegration() 
    {
        return integration;
    }
    public void setGrowth(Long growth) 
    {
        this.growth = growth;
    }

    public Long getGrowth() 
    {
        return growth;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("memberId", getMemberId())
            .append("memberUsername", getMemberUsername())
            .append("courseId", getCourseId())
            .append("startLearnDate", getStartLearnDate())
            .append("courseLearnStatus", getCourseLearnStatus())
            .append("courseQuestionStatus", getCourseQuestionStatus())
            .append("endLearnDate", getEndLearnDate())
            .append("score", getScore())
            .append("integration", getIntegration())
            .append("growth", getGrowth())
            .toString();
    }
}
